public class java250119 {
        /*给定一个只包括 '('，')'，'{'，'}'，'['，']' 的字符串 s ，判断字符串是否有效。
        效字符串需满足：
        左括号必须用相同类型的右括号闭合。
        左括号必须以正确的顺序闭合。
        每个右括号都有一个对应的相同类型的左括号
        示例 1：
        输入：s = "()"
        输出：true
        }*/
        public boolean isValid(String s) {
                Stack<Character> stack = new Stack<>();
                for(int i = 0; i < s.length();i++){
                        char ch = s.charAt(i);
                        if(ch=='('||ch=='['||ch=='{'){
                                stack.push(ch);
                        }else{
                                if(stack.empty()){
                                        return false;
                                }else{
                                        char tmp =stack.peek();
                                        if(ch==')'&&tmp=='('||ch=='}'&&tmp=='{'||ch==']'&&tmp=='[') {
                                                stack.pop();
                                        }else{
                                                return false;
                                        }
                                }
                        }
                }
                if(stack.empty()){
                        return false;
                }
                return true;
        }
}
